const q = 10;
const w = 20;
var text1 = 'hello,"你好"'
var text3 = 'hello,\
你好'
var text2 = "文本是需要\"阅读\"的"
var text4 = ['hello']
// 输出到页面
// document.writeln(q + w);
// document.writeln(text1);
// document.writeln(text3);
const a = text4.push('world')
console.log(a)

const date = new Date()
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
const hour = date.getHours()
const minute = date.getMinutes()
const second = date.getSeconds()
const week = date.getDay()

console.log(year,month,day,hour,minute,second,week)


/*
  数据类型：6种
          1. number：数字类型
          2. string：字符串类型
          3. boolean：布尔类型
          4. undefined：未定义类型
          5. null：空类型
          6. object：对象类型
          ES6新添加两种： Symbol、BigInt

  typeof：判断数据类型（基本数据）

  == : 数据相等即可       === ： 数据类型和值都相等才为真

  非布尔值取反，运算符会将其转换成布尔值
        undifined、null、0、NaN、空字符串('')         都会转换成false

  字符串方法：
        1. length：获取字符串长度
        2. charAt(index)：获取指定索引的字符

        substring()：截取字符串，返回新的字符串，不改变原字符串，负参数被视为0
        slice(start,end)：截取字符串，返回新的字符串，不改变原字符串，负参数被视为从字符串末尾计数

        3. indexOf(str)：获取指定字符串在字符串中第一次出现的位置,存在返回下标，没有返回-1
        indexOf(str,start)：从指定位置开始获取指定字符串在字符串中第一次出现的位置


        5. split(str)：将字符串分割成数组，以str为分隔符

        6. replace(str1,str2)：将字符串中str1替换成str2
        7. toUpperCase()：将字符串转换成大写
        8. toLowerCase()：将字符串转换成小写

        16. concat(str)：连接字符串

        10. startsWith(str)：判断字符串是否以str开头
        11. endsWith(str)：判断字符串是否以str结尾
        12. includes(str)：判断字符串是否包含str

        13. repeat(num)：重复字符串num次

        14. padStart(num,str)：在字符串前面填充str，直到字符串长度为num
        15. padEnd(num,str)：在字符串后面填充str，直到字符串长度为num
        
        17. charCodeAt(index)：获取指定索引的字符的Unicode编码
        18. fromCharCode(code)：将Unicode编码转换成字符
        19. match(reg)：使用正则表达式匹配字符串
        20. search(reg)：使用正则表达式搜索字符串
        22. matchAll(reg)：使用正则表达式匹配所有字符串

        24. toLocaleLowerCase()：将字符串转换成小写，根据本地化规则
        25. toLocaleUpperCase()：将字符串转换成大写，根据本地化规则
        26. normalize(form)：将字符串转换成Unicode正规形式
        27. toString()：将字符串转换成字符串
        28. valueOf()：返回字符串的原始值

        28. trim()：去除字符串两边的空格
        29. trimStart()：去除字符串开头的空格
        30. trimEnd()：去除字符串结尾的空格

        at(index)：获取指定索引的字符，若index为负数，则倒数

  数组：
        1. length：获取数组长度
        join(): 将数组转换成字符串，以指定分隔符连接数组元素，
        与split(str)可以互相转换

        reverse()：反转数组，会改变原数组
        sort()：排序数组，会改变原数组

        2. push()：向数组末尾添加一个或多个元素，并返回新数组的长度，会改变原数组
        3. pop()：删除数组末尾的一个元素，并返回被删除的元素，会改变原数组

        4. shift()：删除数组开头的一个元素，并返回被删除的元素，会改变原数组
        5. unshift()：向数组开头添加一个或多个元素，并返回新数组的长度，会改变原数组

        6. slice(start,end)：截取数组，返回新的数组，不改变原数组，负参数被视为从数组末尾计数
        7. Array.isArray()：判断一个值是否为数组

  Math对象：
        1. Math.abs()：返回一个数的绝对值
        2. Math.ceil()：向上取整
        3. Math.floor()：向下取整
        4. Math.round()：四舍五入
        5. Math.max()：返回最大值
        6. Math.min()：返回最小值
        7. Math.random()：返回0-1之间的随机数
        8. Math.pow(x,y)：返回x的y次方
  
  Date：
        1. Date.now()：返回当前时间的时间戳
        2. Date.parse()：返回指定日期的时间戳
        3. getDate()：返回当前日期
        4. getFullYear()：返回当前年份
        5. getMonth()：返回当前月份
        6. getDay()：返回当前星期几
        7. getHours()：返回当前小时
        8. getMinutes()：返回当前分钟
        9. getSeconds()：返回当前秒数
*/
